package br.edu.fatecou.reserva.backing.datamodel;

import java.util.ArrayList;
import java.util.List;

import javax.faces.model.ListDataModel;

import org.primefaces.model.SelectableDataModel;

import br.edu.fatecou.reserva.dominio.Categoria;

public class CategoriaDataModel extends ListDataModel<Categoria> implements
		SelectableDataModel<Categoria> {
	
	public CategoriaDataModel() {
		super(new ArrayList<Categoria>());
	}
	
	public CategoriaDataModel(List<Categoria> lista) {
		super(lista);
	}

	@SuppressWarnings("unchecked")
	@Override
	public Categoria getRowData(String rowKey) {
		List<Categoria> categorias = (List<Categoria>) getWrappedData();
		
		Long id = Long.valueOf(rowKey);
		for (Categoria categoria : categorias) {
			if (categoria.getCodigo().equals(id))
				return categoria;
		}
		
		return null;
	}

	@Override
	public Object getRowKey(Categoria categoria) {
		return categoria.getCodigo();
	}

}
